package com.intext;

import com.adxon.MsgException;
import com.adxon.data.Base;
import com.adxon.data.Bits;
import com.adxon.data.Item;
import com.adxon.data.Link;
import com.adxon.data.Mark;
import com.adxon.data.Session;
import com.adxon.data.Star;
import com.adxon.data.Tag;
import com.adxon.data.User;

import java.io.IOException;

import javax.servlet.ServletException;
import javax.servlet.http.*;

@SuppressWarnings("serial")
public class SetupServlet extends HttpServlet{
	public static void main(String[] args){
		new SetupServlet().setup();
		System.out.println("Ok.");
	}

	public void doGet(HttpServletRequest req,HttpServletResponse resp)
			throws IOException, ServletException{
		System.out.println("SetupServlet");
		setup();
		resp.sendRedirect("/");
	}
	private void setup(){
		try{
			new Base().setup();		// k
			new Item().setup();		// i
			new Bits().setup();		// i5
			new Star().setup();		// i6
			new Session().setup();	// i7
			new Tag().setup();		// i9
			new User().setup();		// i11

			User hans=new User();
			hans.setAccount("webmaster@adxon.com");
			hans.setPermaLink("webmaster");
			hans.setRank(90);
			hans.setRate(10);
			hans.setText("Webmaster");
			hans.commit();

			hans=new User();
			hans.setAccount("sologram@gmail.com");
			hans.setPermaLink("hans");
			hans.setNewPass("1234567890");
			hans.setRate(10);
			hans.setText("Hans");
			hans.setDescription("Hello, world!");
			hans.commit();

			User benny=new User();
			benny.setAccount("wghwork@gmail.com");
			benny.setNewPass("1234567890");
			benny.setRate(10);
			benny.setText("Benny");
			//benny.setBits(b);
			benny.commit();

			User yiwen=new User();
			yiwen.setAccount("omg.xxnobody@gmail.com");
			yiwen.setPermaLink("yiwen");
			yiwen.setNewPass("1234567890");
			yiwen.setRate(10);
			yiwen.setText("Yiwen");
			yiwen.commit();

			User lee=new User();
			lee.setAccount("lee");
			lee.setRate(10);
			lee.setText("李文杰");
			lee.commit();

			Link n=new Link();
			n.setDescription("牛顿的伟大似乎已毋庸置疑，有人认为，如果当时有诺贝尔奖，那么牛顿至少能得三次：万有引力定律、光学和化学的贡献，另外由于他在微积分上的造诣，还能得一次菲尔兹奖，但事实果真如此吗?");
			n.setPermaLink("http://www.douban.com/group/topic/55023818/");
			n.setOwner(lee);
			n.setTags("牛顿,科学,人物,胡克,莱布尼茨,哈雷");
			n.setText("牛顿的另一面：卑鄙的天才 无德的科学家");
			n.addRef();
			n.commit();
			Mark m=new Mark();
			m.setRef(n);
			m.setOwner(lee);
			m.commit();

			n=new Link();
			n.setDescription("世界又不认识你，它是无意的。");
			n.setPermaLink("http://www.zhihu.com/question/23474904/answer/25122270");
			n.setOwner(yiwen);
			n.setText("世界是善意的吗?");
			n.addRef();
			n.commit();
			m=new Mark();
			m.setRef(n);
			m.setOwner(yiwen);
			m.commit();

			n=new Link();
			n.setDescription("研究哲学有什么“具体实际的意义”很难证明，但据我所知学习哲学最“具体实际的意义”，是补贴其它学科的教学费用。见：人文学科和其他学科：是谁补助了谁?摘一段：在所有专业中，工程专业最为昂贵：培养一名本科学生需要接近十万美元。");
			n.setPermaLink("http://www.zhihu.com/question/24115224/answer/26868346");
			n.setOwner(benny);
			n.setTags("哲学,教育,文科,理科");
			n.setText("研究哲学的具体实际的意义是什么?");
			n.addRef();
			n.commit();
			m=new Mark();
			m.setRef(n);
			m.setOwner(benny);
			m.commit();

			n=new Link();
			n.setDescription("人们一度认为，围棋是如此复杂，可能真的需要通过细究人是如何理解围棋，然后模拟人的思维，然后才能够战胜人类，或者至少成为一个可以认真对待的对手。围棋中的“筋”、“形”、“厚实”、“薄味”，入界宜缓、弃子争先，这些概念，如何能够在程序中体现？这似乎是需要一个崭新的做法。为数不多的电脑围棋开发者在这条路上徘徊了几年。然后，新的做法果然出现了，但却跟“理解围棋”没什么太大关系。");
			n.setPermaLink("http://www.zhihu.com/question/21714457/answer/26815691");
			n.setOwner(benny);
			n.setTags("象棋,围棋,智能,算法,人工,机器");
			n.setText("在国际象棋领域，电脑已经可以战胜人脑，那么围棋领域电脑还差多远?");
			n.addRef();
			n.commit();
			m=new Mark();
			m.setRef(n);
			m.setOwner(benny);
			m.commit();

			n=(Link)new Link().update("http://www.zhihu.com/question/23474904/answer/25122270");
			n.addRef();
			n.setFlag(true);
			n.commit();
			m=new Mark();
			m.setRef(n);
			m.setOwner(hans);
			m.setTags("世界,哲学");
			m.commit();

			n=new Link();
			n.setPermaLink("http://www.zhihu.com/question/19617804");
			n.setOwner(lee);
			n.setTags("字体,渲染,字符,编码,特殊");
			n.setText("“I think there's a smudge on.̸̸̸̸̸̸̸̸̸̸̸̸̸̸̸̸̸̸̸̸̸̸̸̸̨̨̨̨̨̨̨̨̨̨̨̨.̸̸̨̨your screen”这种文本究竟是怎么回事?");
			n.addRef();
			n.commit();
			m=new Mark();
			m.setRef(n);
			m.setOwner(lee);
			m.commit();

			Item p=new Item();
			p.setDescription("因为矛盾对立统一不是定律。");
			p.setOwner(yiwen);
			p.setTags("哲学,科学,定律");
			p.setText("热力学第二定律与矛盾对立统一定律两者相悖，怎么解释?");
			p.commit();

			n=new Link();
			n.setDescription("正如这里的热门回答所说，指望哲学论证有可能像数学一样精确显然是天方夜谭。更加一般地，想要给自己寻找不能干某事的原因，千千万万都能找到。但这不等于说“通常属于哲学范畴”的问题得不到精确的回答。意义学在一个只有六条简单公理的紧凑理论框架体系中已经或者将能完全在公认的科学范畴内精确解决通常属于哲学范畴的问题中常见和重要的部分，完全不需要回避现实的验证与核查。");
			n.setPermaLink("http://www.zhihu.com/question/20841131/answer/22297874");
			n.setOwner(hans);
			n.setTags("哲学,数学,精确,理论");
			n.setText("哲学论证有可能像数学一样精确吗?");
			n.addRef();
			n.commit();
			m=new Mark();
			m.setRef(n);
			m.setOwner(hans);
			m.commit();

			n=(Link)new Link().update("http://www.douban.com/group/topic/55023818/");
			n.addRef();
			n.setFlag(true);
			n.commit();
			m=new Mark();
			m.setRef(n);
			m.setOwner(yiwen);
			m.setTags("数学,牛顿,历史,科学,人物");
			m.setDescription("牛顿最重要的贡献就是发现了万有引力定律，但这并非牛顿一个人的功劳。胡克早于牛顿发现了“引力大小与距离的平方成反比”现象，而当时牛顿甚至错误的认为引力大小不随距离变化，胡克之后将自己的发现和感想在信中与牛顿进行了讨论，并纠正了后者的错误概念。");
			m.commit();

			n=new Link();
			n.setPermaLink("http://www.zhihu.com/question/24338193");
			n.setOwner(benny);
			n.setTags("生鲜,电商");
			n.setText("生鲜电商有成功案例吗?");
			n.addRef();
			n.commit();
			m=new Mark();
			m.setRef(n);
			m.setOwner(benny);
			m.commit();

			n=(Link)new Link().update("http://www.douban.com/group/topic/55023818/");
			n.addRef();
			n.setFlag(true);
			n.commit();
			m=new Mark();
			m.setRef(n);
			m.setOwner(hans);
			n.setTags("牛顿,历史,科学,人物");
			m.commit();

			n=(Link)new Link().update("http://www.zhihu.com/question/24338193");
			n.addRef();
			n.setFlag(true);
			n.commit();
			m=new Mark();
			m.setRef(n);
			m.setOwner(lee);
			m.commit();

			n=(Link)new Link().update("http://www.douban.com/group/topic/55023818/");
			n.addRef();
			n.setFlag(true);
			n.commit();
			m=new Mark();
			m.setRef(n);
			m.setOwner(benny);
			m.commit();
		}catch(MsgException e){
			e.printStackTrace();
		}
	}
}